]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
grabHelper: Fix some keyboard focus issues with the message tray
authorJasper St. Pierre <jstpierre@mecheye.net>
Thu, 16 Aug 2012 17:40:51 +0000 (13:40 -0400)
committerJasper St. Pierre <jstpierre@mecheye.net>
Mon, 20 Aug 2012 01:15:49 +0000 (21:15 -0400)
This will need to be revisited.

js/ui/grabHelper.js

index 6cb10073f3f2d6b4480ebc5c8ce0286d4bd0520b..a330c04a30c2f5332793891bf9e09686e388447d 100644 (file)
@@ -140,7 +140,7 @@ const GrabHelper = new Lang.Class({
 
         let focus = global.stage.key_focus;
         let hadFocus = focus && this._isWithinGrabbedActor(focus);
-        let newFocus = hadFocus : focus ? params.actor;
+        let newFocus = params.actor;
 
         if (this.isActorGrabbed(params.actor))
             return;
@@ -149,7 +149,6 @@ const GrabHelper = new Lang.Class({
             this._fullGrab(hadFocus, params.modal, params.grabFocus);
 
         params.savedFocus = focus;
-        params.newFocus = newFocus;
         this._grabStack.push(params);
 
         if (params.modal)
@@ -219,12 +218,6 @@ const GrabHelper = new Lang.Class({
         let focus = global.stage.key_focus;
         let hadFocus = focus && this._isWithinGrabbedActor(focus);
 
-        let newFocus = poppedGrab.savedFocus;
-        if (!newFocus)
-            newFocus = poppedGrab.newFocus;
-
-        _navigateActor(newFocus, hadFocus);
-
         if (poppedGrab.onUngrab)
             poppedGrab.onUngrab();
 
@@ -235,6 +228,7 @@ const GrabHelper = new Lang.Class({
         if (modal)
             this._modalCount--;
 
+        _navigateActor(poppedGrab.savedFocus, hadFocus);
     },
 
     _fullUngrab: function() {